//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//

package org.jooq.util.sqlserver;

import org.jooq.DataType;
import org.jooq.SQLDialect;
import org.jooq.impl.DefaultDataType;
import org.jooq.impl.SQLDataType;
import org.jooq.types.UByte;
import org.jooq.types.UInteger;
import org.jooq.types.ULong;
import org.jooq.types.UShort;

import java.math.BigDecimal;
import java.math.BigInteger;
import java.sql.Date;
import java.sql.Time;
import java.sql.Timestamp;
import java.time.OffsetDateTime;
import java.util.UUID;

/** @deprecated */
@Deprecated
public class SQLServerDataType {
    public static final DataType<UByte> TINYINT;
    public static final DataType<Short> SMALLINT;
    public static final DataType<Integer> INT;
    public static final DataType<Long> BIGINT;
    public static final DataType<Double> FLOAT;
    public static final DataType<Float> REAL;
    public static final DataType<BigDecimal> NUMERIC;
    public static final DataType<BigDecimal> DECIMAL;
    public static final DataType<Boolean> BIT;
    public static final DataType<Date> DATE;
    public static final DataType<Timestamp> DATETIME;
    public static final DataType<Time> TIME;
    public static final DataType<String> VARCHAR;
    public static final DataType<String> CHAR;
    public static final DataType<String> TEXT;
    public static final DataType<String> NVARCHAR;
    public static final DataType<String> NCHAR;
    public static final DataType<String> NTEXT;
    public static final DataType<byte[]> VARBINARY;
    public static final DataType<byte[]> BINARY;
    protected static final DataType<byte[]> __BLOB;
    protected static final DataType<Boolean> __BOOLEAN;
    protected static final DataType<Double> __DOUBLE;
    protected static final DataType<byte[]> __LONGVARBINARY;
    protected static final DataType<String> __LONGVARCHAR;
    protected static final DataType<String> __NCLOB;
    protected static final DataType<String> __LONGNVARCHAR;
    protected static final DataType<Byte> __BYTE;
    protected static final DataType<BigInteger> __BIGINTEGER;
    protected static final DataType<UShort> __SMALLINTUNSIGNED;
    protected static final DataType<UInteger> __INTEGERUNSIGNED;
    protected static final DataType<ULong> __BIGINTUNSIGNED;
    public static final DataType<Timestamp> SMALLDATETIME;
    public static final DataType<Timestamp> DATETIME2;
    public static final DataType<OffsetDateTime> DATETIMEOFFSET;
    public static final DataType<BigDecimal> MONEY;
    public static final DataType<BigDecimal> SMALLMONEY;
    public static final DataType<byte[]> IMAGE;
    public static final DataType<UUID> UNIQUEIDENTIFIER;
    public static final DataType<Long> ROWVERSION;
    public static final DataType<byte[]> TIMESTAMP;

    public SQLServerDataType() {
    }

    static {
        TINYINT = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.TINYINTUNSIGNED, "tinyint");
        SMALLINT = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.SMALLINT, "smallint");
        INT = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.INTEGER, "int");
        BIGINT = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.BIGINT, "bigint");
        FLOAT = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.FLOAT, "float");
        REAL = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.REAL, "real");
        NUMERIC = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.NUMERIC, "numeric");
        DECIMAL = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.DECIMAL, "decimal");
        BIT = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.BIT, "bit");
        DATE = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.DATE, "date");
        DATETIME = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.TIMESTAMP, "datetime");
        TIME = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.TIME, "time");
        VARCHAR = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.VARCHAR, "varchar", "varchar(max)");
        CHAR = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.CHAR, "char");
        TEXT = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.CLOB, "text");
        NVARCHAR = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.NVARCHAR, "nvarchar", "nvarchar(max)");
        NCHAR = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.NCHAR, "nchar");
        NTEXT = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.NCLOB, "ntext");
        VARBINARY = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.VARBINARY, "varbinary", "varbinary(max)");
        BINARY = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.BINARY, "binary");
        __BLOB = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.BLOB, "binary");
        __BOOLEAN = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.BOOLEAN, "bit");
        __DOUBLE = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.DOUBLE, "float");
        __LONGVARBINARY = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.LONGVARBINARY, "varbinary", "varbinary(max)");
        __LONGVARCHAR = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.LONGVARCHAR, "varchar", "varchar(max)");
        __NCLOB = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.NCLOB, "text");
        __LONGNVARCHAR = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.LONGNVARCHAR, "varchar", "varchar(max)");
        __BYTE = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.TINYINT, "signed tinyint", "tinyint");
        __BIGINTEGER = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.DECIMAL_INTEGER, "numeric");
        __SMALLINTUNSIGNED = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.SMALLINTUNSIGNED, "int");
        __INTEGERUNSIGNED = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.INTEGERUNSIGNED, "bigint");
        __BIGINTUNSIGNED = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.BIGINTUNSIGNED, "numeric");
        SMALLDATETIME = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.TIMESTAMP, "smalldatetime");
        DATETIME2 = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.TIMESTAMP, "datetime2");
        DATETIMEOFFSET = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.TIMESTAMPWITHTIMEZONE, "datetimeoffset");
        MONEY = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.DECIMAL, "money");
        SMALLMONEY = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.DECIMAL, "smallmoney");
        IMAGE = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.BINARY, "image");
        UNIQUEIDENTIFIER = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.UUID, "uniqueidentifier");
        ROWVERSION = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.BIGINT, "rowversion");
        TIMESTAMP = new DefaultDataType(SQLDialect.SQLSERVER, SQLDataType.VARBINARY, "timestamp");
    }
}
